package com.ruoyi.system.domain.bo;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 城市行政区划业务对象 sys_area
 *
 * @author ruoyi
 * @date 2023-11-13
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class SysAreaBo extends BaseEntity {

    /**
     * 主键ID
     */
    @NotNull(message = "主键ID不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 父ID
     */
    @NotNull(message = "父ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long parentId;

    /**
     * 层级
     */
    @NotBlank(message = "层级不能为空", groups = { AddGroup.class, EditGroup.class })
    private String level;

    /**
     * 名称
     */
    @NotBlank(message = "名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     * 全称
     */
    @NotBlank(message = "全称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fullName;

    /**
     * 经度
     */
//    @NotBlank(message = "经度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String longitude;

    /**
     * 维度
     */
//    @NotBlank(message = "维度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String latitude;

    /**
     * 城市编码
     */
//    @NotBlank(message = "城市编码不能为空", groups = { AddGroup.class, EditGroup.class })
    private String cityCode;

    /**
     * 邮政编码
     */
//    @NotBlank(message = "邮政编码不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zipCode;

    /**
     * 行政区划代码
     */
    @NotBlank(message = "行政区划代码不能为空", groups = { AddGroup.class, EditGroup.class })
    private String areaCode;

    /**
     * 拼音
     */
    @NotBlank(message = "拼音不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pinYin;

    /**
     * 简拼
     */
    @NotBlank(message = "简拼不能为空", groups = { AddGroup.class, EditGroup.class })
    private String simplePy;

    /**
     * 拼音缩写
     */
    @NotBlank(message = "拼音缩写不能为空", groups = { AddGroup.class, EditGroup.class })
    private String perPinYin;


}
